from exts import db


class Goods(db.Model):
    __tablename__ = 'goods'
    id = db.Column(db.Integer, primary_key=True, autoincrement=True)
    gname = db.Column(db.String(50), nullable=False)
    price = db.Column(db.Float, nullable=False)
    
    # secondary 关联第三张表
    # user表和goods表简历关系通过第三方表
    users = db.relationship('User', backref='goodslist',secondary='user_goods')
    
    # 商品的数据模型和用户模型建立关系
    
    def __str__(self):
        return self.gname

# 多对多，通过第三方表来存储用户和goods的关系
# 用户和商品的关系表
class User_Goods(db.Model):
    __tablename__ = 'user_goods' # 表的名称，一般是模型名称的小写
    id = db.Column(db.Integer, primary_key=True, autoincrement=True)
    user_id = db.Column(db.Integer, db.ForeignKey('user.id'))
    goods_id = db.Column(db.Integer, db.ForeignKey('goods.id'))
    number = db.Column(db.Integer, default=1)
    
    def __str__(self):
        return self.id